package modelo.carrera.filtros;

import java.util.Date;

import compartido.filtros.IFiltro;

import modelo.carrera.Carrera;

public class EsCarreraSiendoSimulada implements IFiltro<Carrera> {
	protected double tolerancia;
	
	public EsCarreraSiendoSimulada(double tolerancia) {
		this.tolerancia = tolerancia;
	}

	@Override
	public boolean cumple(Carrera elemento) {
		Date fechaActual = new java.util.Date();
		Date fechaLargada = elemento.getHorarioLargada();
		
		long diferenciaEnMilisegundos = fechaActual.getTime() - fechaLargada.getTime();
		diferenciaEnMilisegundos*=Long.signum(diferenciaEnMilisegundos);
	
		return ( (diferenciaEnMilisegundos >= tolerancia) || elemento.getFinalizada() );
	}
}
